1. Field of the Invention
The present invention generally relates to the storing of data on magnetic tape media and, more particularly, to a partitioning or wrapping format that increases magnetic tape storage capacity for applications utilizing linear recording of fixed partitions.
2. Relevant Background
The market for mass storage devices is growing at what seems to be an ever increasing rate with the sales of high-performance computers penetrating numerous industries ranging from financial institutions to oil exploration companies. The processing power of these high-performance systems, and the data they generate, are increasing faster than the ability of storage devices to keep pace. The problem of data storage and rapid retrieval is particularly pronounced in computational-intensive applications which create huge amounts of data that need to be accessed in seconds rather than minutes, hours or even days.
Magnetic disks remain the preferred media for direct access to frequently used files because of their fast access times. However, because of their high cost per-unit of storage and limited capacity, magnetic disk recorders are prohibitively expensive and therefore impractical for large-scale data storage. With the advances in magnetic tape technology, tape based systems remain the preferred choice for mass data storage. In addition to cost, magnetic tape exceeds the storage density of almost any other medium, at least from a volumetric standpoint, because tape is a much thinner medium than, for example, magnetic disks, and tape can be tightly packed.
Magnetic tape is a magnetic recording medium made of a thin magnetizable coating on a long, narrow strip of plastic which is typically stored in the form of a spool on a cartridge or cassette. Typically, magnetic tape includes multiple, parallel tracks for reading data from or writing data to the tape in one of a number of manners. In “linear” or “longitudinal” reading or recording, data is read or recorded by moving from a starting point on the first track of the tape and moving linearly down the tape along the first track or along a first path. Once the physical end of the tape (EOT) is reached, the tape is rewound to the beginning of the tape (BOT) at which point the read/record head assembly begins reading or recording linearly down the tape along the second track or along a second path. In a variation of the linear method known as “serpentine” reading and recording, the head assembly first spans the tape's entire length in one direction along one track or path and then return in the opposite direction along an adjacent parallel track or path (and then continues sweeping back and forth along the tape). In another variation of the linear method known as “spiral in” reading and recording, the head assembly first spans the tape's entire length in a first direction along a first track or path adjacent one outer lateral edge of the tape, returns in the opposite direction along a second track or path adjacent the other lateral edge of the tape, spans the tape in the first direction again along a third track or path adjacent the first track, and so on in a spiral manner around the tape.
Most current technology manages tape media as a single stream of serial storage having a single beginning of data (BOD) location and single end of data (EOD) location. Each subsequent write operation defines a new single EOD moving down the length of the tape as more data is stored to the tape cartridge. A header block including data format information is recorded at the beginning of a data portion to be written and specifies the configuration of the data to follow. The head assembly then records user data onto a variable sized portion of tape whose length depends upon the amount of user data recorded. An EOD marker is recorded once all the user data has been recorded. When tape files are updated or modified, the original file is left on tape and the new modified file is added to the end of the serial stream. To access user data stored in the middle of the tape, the head assembly must read all the header blocks until the desire user data is reached. Periodically, the tape may be scratched to erase or otherwise remove old or expired data.
More recently, magnetic tape has been broken up into a number of partitions to facilitate management of and access to stored data. “Partitioning” generally involves the establishment of at least one independently addressable data storage region on the tape (e.g., during pre-formatting of the magnetic tape and/or during a data write). For instance, a two-partition system generally involves dividing tape along its length into a user data partition and a file directory (e.g., index) partition which stores metadata necessary to locate specific data in the user data partition free of external information so as to make the tape appear as disk to external applications. The index includes a hierarchical directory structure and files with attributes such as file name, date, and size, and the index can be accessible in a manner that is independent of the data files stored on the tape. The index in the file directory partition is sequentially updateable (i.e., metadata for newly written data blocks is appended at the end of the most recently written metadata in the file directory).
In some arrangements, each track or wrap of the magnetic tape may include a plurality of partitions, where each data write consumes one or more partitions. In one variation, partitions may be of fixed size so that a single recording of data may span or otherwise encompass multiple fixed partitions. Through use of partitioning, a number of logical tape libraries can be created from a single length of magnetic tape. Each partition may have a number of portions such as a header (e.g., including any appropriate address or identifier, unique key, and/or the like), a data storage portion, and the like. Additionally, partitions may be defined by filemarks or setmarks (i.e., special recorded elements that do not contain user data; they simply divide the partition into smaller areas to provide an address scheme). The head assembly may utilize the tape file system along with the header information to locate a particular partition to dynamically or randomly read or write data.
Often, magnetic tape is pre-formatted with a plurality of guards (i.e., strips of the tape on which user data cannot be written) running either perpendicular to the tape length (to separate the tape into a number of sections or segments) or along the tape length (to separate the tape into a number of servo portions or data bands on which independent read/write heads can operate). A head assembly will often have a plurality of read/write heads that are operable to simultaneously read and/or write in one or more tracks in respective data bands. One or more tracks written at the same time along the tape length is referred to as a “wrap.” In this regard, a new wrap begins each time the head assembly begins reading or writing in the forward or reverse directions.
Partitioning of magnetic tape can sometimes have the drawback of reduced storage capacity of the magnetic tape. In this regard, “shingling” of magnetic tape media has been introduced as a way to increase the data density of magnetic tape in a manner that is generally free of significant changes to the structure of the underlying magnetic tape media and/or the head assemblies. Generally, shingling refers to the situation where one wrap at least partially overlaps and overwrites an adjacent previous wrap. The portion of each wrap not overlapped by an adjacent, subsequent wrap may be referred to as an “actual” or “residual” wrap which can be read by the read head of the head assembly. Shingling allows for the tighter placement and reduction in width of residual data tracks without requiring a reduction in size of the write head of the head assembly (which would likely require increased costs, effort, and the like). While shingled wraps can be randomly or dynamically read, they are generally not dynamically written because doing so would inherently erase or write over a portion of an adjacent residual wrap. In this regard, new and/or updated data is written sequentially to the end of the most recently written data on the magnetic tape. Furthermore, file directories for shingled magnetic tape are typically stored on a remote storage medium (e.g., magnetic disk). While some arrangements include file directories stored directly on a length of magnetic tape, such file directories are only sequentially writable as a stream and thus are not dynamically writable or updateable.